文字换行

本节代码
属性 说明 value
overflow-wrap 指定当一个不能被分开的字符串太长而不能填满其容器时,为防止其溢出,浏览器是否允许该单词中断换行 normal
break-word
anywhere
word-wrap overflow-wrap 的别名,功能相同 normal
break-word
anywhere
word-break 指定文字内的单词是否允许在单词内断行 normal
break-all
keep-all
break-word
white-space 设置如何处理元素内的空白符 normal
nowrap
pre
pre-wrap
pre-line
break-spaces

overflow-wrapword-wrap

overflow-wrap - CSS:层叠样式表 | MDN

CSS Text Module Level 3

备注

word-break 相比,overflow-wrap 仅在无法将整个单词放在自己的行而不会溢出的情况下才会产生换行。

说明
normal 只在允许的断字点换行 (如空格和连字符)。这是默认值。
break-word 在长单词或 URL 地址内部进行换行。
anywhere 允许在任意字符间断开,包括非空格字符中间断开。

word-break

word-break - CSS:层叠样式表 | MDN

CSS Text Module Level 3

备注

word-break: break-wordoverflow-wrap: break-word(详见 overflow-wrap)对比,word-break: break-word 将在文本可能溢出其容器的确切位置创建一个断点。

说明
normal 使用默认的换行规则。
break-all 对于 non-CJK (CJK 指中文/日文/韩文) 文本,可在任意字符间断行。
keep-all CJK 文本不断行。Non-CJK 文本表现同 normal
break-word **已经弃用。**效果是 word-break: normaloverflow-wrap: anywhere 的合,不论 overflow-wrap 的值是多少。

white-space

white-space - CSS:层叠样式表 | MDN

CSS Text Module Level 3

备注

要使单词可以在其内部被截断,请使用 overflow-wrapword-breakhyphens 代替。

下面的表格总结了各种 white-space 关键字值的行为:

换行符 空格和制表符 文本换行 行末空格 行末的其他空白分隔符
normal 合并 合并 换行 移除 挂起
nowrap 合并 合并 不换行 移除 挂起
pre 保留 保留 不换行 保留 不换行
pre-wrap 保留 保留 换行 挂起 挂起
pre-line 保留 合并 换行 移除 挂起
break-spaces 保留 保留 换行 换行 换行
空格其他空白分隔符 之间存在区别。定义如下:

  • 空格:空格(U+0020)、制表符(U+0009)和分段符(例如换行)
  • 其他空白分隔符:Unicode 中定义的所有其他空格分隔符(已定义为空格的分隔符除外)。

如果空白字符被挂起,那么它可能会影响框的固有尺寸的测量结果。